home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
DS-CD ROM 2 1993 August
/
DS CD-ROM 2.Ausgabe (August 1993).iso
/
programm
/
ds0334
/
sim51_04.arj
/
REG515.PDF
< prev
next >
Wrap
Text File
|
1991-12-17
|
6KB
|
198 lines
; Speziell Funktion Register (SFR) des 80515 und 80535 (Siemens)
;-----------------------------------------------------------------
;
; interner Datenspeicher: 256 Byte RAM (Adresse 00...0FFh)
; interner Programmspeicher: bei 80515 = 8 kByte ROM (Adresse 000...1FFFh)
; der 80535 besitzt keinen internen Programmspeicher
; Timer: drei 16-Bit Timer
; ein 16-Bit Watchdog
; serielle Schnittstelle: eine zeichenorientierte
; 8 bit Analog-/Digital-Wandler mit 8 seperaten Multiplex-Eingänge
; Pulsweitenmodulation mit Timer2 und Compare-Register
; Programme für den 8051 laufen nicht uneingeschränkt auf dem 80515.
; Das Interrupt-Priority Register liegt auf einer anderen Adresse!
; Auch Timer 2 ist nicht mit dem im 8052 kompatibel! (T2CON enthält
; andere Funktionen)
; Der 80515 besitzt alle Funktionen des 8051 und 8052, jedoch müssen Interrupts
; und Timer2 anderst programmiert werden.
;******* CODE *******
;RESET CODE 0000 ; diese CODE-Adressen kennt der ASM51.EXE trotz
;EXTI0 CODE 0003 ; NOMOD51-Diretive default
;TIMER0 CODE 000Bh
;EXTI1 CODE 0013h
;TIMER1 CODE 001Bh
;SINT CODE 0023h
TIMER2 CODE 002Bh ; weitere Interrupt-Einsprünge
ADCI CODE 0043h
EXTI2 CODE 004Bh
EXTI3 CODE 0053h
EXTI4 CODE 005Bh
EXTI5 CODE 0063h
EXTI6 CODE 006Bh
;******* DATA *******
P0 DATA 80h ; Ports
P1 DATA 90h
P2 DATA 0A0h
P3 DATA 0B0h
P4 DATA 0E8h ; adressierbar wie Port 1
P5 DATA 0F8h ; adressierbar wie Port 1
ADCON DATA 0D8h ; Analog-/Digital Control
ADDAT DATA 0D9h ; Data
DAPR DATA 0DAh ; Programm
PSW DATA 0D0h ; CPU-Control
PCON DATA 87h
ACC DATA 0E0h ; Rechenregister
B DATA 0F0h
SP DATA 81h ; Stack-Pointer
DPL DATA 82h ; Daten-Pointer Low Byte
DPH DATA 83h
TCON DATA 88h ; Timer Control für Timer 0, 1
TMOD DATA 89h ; Timer Mode für Timer 0, 1
TL0 DATA 8Ah ; Timer 0 Low Byte
TL1 DATA 8Bh
TH0 DATA 8Ch
TH1 DATA 8Dh
;
CCEN DATA 0C1h ; Compare/Capture Enable
CCL1 DATA 0C2h
CCH1 DATA 0C3h
CCL2 DATA 0C4h
CCH2 DATA 0C5h
CCL3 DATA 0C6h
CCH3 DATA 0C7h
T2CON DATA 0C8h ; Timer 2 Control ! andere Funktion als beim 8052 !
CRCL DATA 0CAh ; ähnlich wie RCAP2L beim 8052
CRCH DATA 0CBh ; ähnlich wie RCAP2H beim 8052
T2L DATA 0CCh
T2H DATA 0CDh
IEN0 DATA 0A8h ; bei 8051 mit IE bezeichnet, gleiche Funktion
IP0 DATA 0A9h ; bei 8051: IP = 0B8h ! Adresse und Funktion geändert
IEN1 DATA 0B8h
IP1 DATA 0B9h
IRCON DATA 0C0h
SCON DATA 98h ; serielle Schnittstelle Control
SBUF DATA 99h ; Data
;******* BIT *******
; ..................... PSW --> D0
CY BIT 0D7h ; Carry
AC BIT 0D6h ; Hilfs-Carry
F0 BIT 0D5h ; Flag 0, frei
RS1 BIT 0D4h ; Registerbank-Selekt
RS0 BIT 0D3h
OV BIT 0D2h ; Overrun
F1 BIT 0D1h ; Flag 1, frei
P BIT 0D0h ; Parity
; ..................... TCON --> 88
TF1 BIT 8Fh ; Timer1 Überlauf-Flag
TR1 BIT 8Eh ; Timer1 run
TF0 BIT 8Dh ; Timer0 Überlauf-Flag
TR0 BIT 8Ch ; Timer0 run
IE1 BIT 8Bh ; extern Int1 Flag
IT1 BIT 8Ah ; Flankentriggerung für Int1
IE0 BIT 89h ; extern Int0 Flag
IT0 BIT 88h ; Flankentriggerung für Int0
; ..................... IEN0 --> A8
EAL BIT 0AFh ; gleich Adresse, gleiche Funktion wie EA bei 8051
WDT BIT 0AEh ; Watchdog rücksetzen (mit SWDT)
ET2 BIT 0ADh ; Timer 2 Interrupt Enable
ES BIT 0ACh ; seriell Interrupt Enable
ET1 BIT 0ABh ; Timer 1 Interrupt Enable
EX1 BIT 0AAh ; extern INT1 Interrupt Enable
ET0 BIT 0A9h ; Timer 0 Interrupt Enable
EX0 BIT 0A8h ; extern INT0 Interrupt Enable
; ..................... IEN1 --> B8
EXEN2 BIT 0BFh ; externer Reload-Int Enable
SWDT BIT 0BEh ; start Watchdog + Rücksetzen (mit WDT)
EX6 BIT 0BDh ; externer Interrupt 6 Enable
EX5 BIT 0BCh ; externer Interrupt 5 Enable
EX4 BIT 0BBh ; externer Interrupt 4 Enable
EX3 BIT 0BAh ; externer Interrupt 3 Enable
EX2 BIT 0B9h ; externer Interrupt 2 Enable
EADC BIT 0B8h ; A/D Wandler Interrupt Enable
; die Interrupt-Priority-Register sind nicht bitadressierbar!
; ..................... IRCON --> C0
EXF2 BIT 0C7h ; extern Reload Request Flag
TF2 BIT 0C6h ; Timer2 Überlauf Flag
IEX6 BIT 0C5h ; extern Int6 Flag
IEX5 BIT 0C4h ; extern Int5 Flag
IEX4 BIT 0C3h ; extern Int4 Flag
IEX3 BIT 0C2h ; extern Int3 Flag
IEX2 BIT 0C1h ; extern Int2 Flag
IADC BIT 0C0h ; A/D Request Flag
; ..................... P3 --> B0
RD BIT 0B7h ; Lesesignal bei MOVX-Befehl
WR BIT 0B6h ; Schreibsignal bei MOVX-Befehl
T1 BIT 0B5h ; Timer1 Zähleingeng
T0 BIT 0B4h ; Timer0 Zähleingang
INT1 BIT 0B3h ; externer Interrupt 1
INT0 BIT 0B2h ; externer Interrupt 0
TXD BIT 0B1h ; Sendeausgang der seriellen Schnittstelle
RXD BIT 0B0h ; Empfängereingang der seriellen Schnittstelle
; ..................... SCON --> 98
SM0 BIT 9Fh ; seiell Mode-Auswahl
SM1 BIT 9Eh
SM2 BIT 9Dh ; Bit08 Mode-auswahl
REN BIT 9Ch ; Receive Enable
TB8 BIT 9Bh ; transmit als Bit08
RB8 BIT 9Ah ; receive Bit08
TI BIT 99h ; transmit Interrupt Flag
RI BIT 98h ; receive Interrupt Flag
; ..................... T2CON --> C8
T2PS BIT 0CFh ; OszillatorFreq. Vorteiler 12/24
I3FR BIT 0CEh ; selekt Flanke für Int3
I2FR BIT 0CDh ; selekt Flanke für Int2
T2R1 BIT 0CCh ; Reload-Modus Wahl T2R1:T2R0
T2R0 BIT 0CBh
T2CM BIT 0CAh ; Compare Modus Wahl
T2I1 BIT 0C9h ; Increment-Modus Wahl T2I1:T2I0
T2I0 BIT 0C8h
; ..................... ADCON --> D8
BD BIT 0DFH ; Baudrate für seriell über internen Baudrate-Generator
CLK BIT 0DEH ; System Takt an Port P1.6 enable
BSY BIT 0DCH ; Busy Flag
ADM BIT 0DBH ; A/D Modus (einmalig, fortlaufend)
MX2 BIT 0DAH ; Analogkanal-Wahl: MX2:MX1:MX0
MX1 BIT 0D9H
MX0 BIT 0D8H
; .................... P1 --> 90
T2 BIT 97h ; Timer2 Zähleingang
CLKOUT BIT 96h ; Systemtakt-Ausgang
T2EX BIT 95h ; externer Reload Eingang
INT2 BIT 94h ; externer Interrupt 2
INT6 BIT 93h ; externer Interrupt 6
INT5 BIT 92h ; externer Interrupt 5
INT4 BIT 91h ; externer Interrupt 4
INT3 BIT 90h ; externer Interrupt 3
CC3 BIT 93h ; Capture Eingang / Compare Ausgang 3
CC2 BIT 93h ; Capture Eingang / Compare Ausgang 2
CC1 BIT 93h ; Capture Eingang / Compare Ausgang 1
CC0 BIT 93h ; Capture Eingang / Compare Ausgang 0